package com.tengju.data.infrastructure.repository.convert;

import com.tengju.data.domain.model.user.StarLevelEnum;
import com.tengju.data.domain.model.user.UserIdCode;
import com.tengju.data.domain.model.wx.WxActivateStatus;
import com.tengju.data.domain.model.wx.WxUserBelongInfo;
import com.tengju.data.infrastructure.persistence.mybatis.dataobject.WxUserBelongInfoDO;

/**
 * @author: 李大仙
 * @date: 2021/11/5 11:12 上午
 */
public class WxUserBelongInfoConvert {
    public static WxUserBelongInfo convert(WxUserBelongInfoDO wxUserBelongInfoDO) {
        if (wxUserBelongInfoDO == null) {
            return null;
        }
        return new WxUserBelongInfo(
                UserIdCode.of(wxUserBelongInfoDO.getIdCode()),
                StarLevelEnum.parseByStarLevel(wxUserBelongInfoDO.getStarLevel()),
                wxUserBelongInfoDO.getWxActivateStatus() != 0 ? WxActivateStatus.form(wxUserBelongInfoDO.getWxActivateStatus()) : WxActivateStatus.SPECIAL,
                wxUserBelongInfoDO.getUserName(),
                UserIdCode.of(wxUserBelongInfoDO.getBlStar1IdCode()),
                wxUserBelongInfoDO.getBlStar1Name(),
                UserIdCode.of(wxUserBelongInfoDO.getBlStar2IdCode()),
                wxUserBelongInfoDO.getBlStar2Name(),
                UserIdCode.of(wxUserBelongInfoDO.getBlStar3IdCode()),
                wxUserBelongInfoDO.getBlStar3Name(),
                UserIdCode.of(wxUserBelongInfoDO.getBlStar4IdCode()),
                wxUserBelongInfoDO.getBlStar4Name(),
                UserIdCode.of(wxUserBelongInfoDO.getBlEcIdCode()),
                wxUserBelongInfoDO.getBlEcName(),
                UserIdCode.of(wxUserBelongInfoDO.getBlSecIdCode()),
                wxUserBelongInfoDO.getBlSecName()
        );
    }
}
